Computing and communication networks typically include nodes, such as routers, firewalls, switches or gateways, which transfer or switch data, such as packets, from one or more sources to one or more destinations. The nodes may operate on the packets as the packets traverse the network, such as by forwarding or filtering network traffic defined by the packets.
Ethernet is a common network technology that is used by nodes in forwarding network traffic. In an Ethernet connection, nodes may divide a stream of data into individual packets called frames. Each frame may contain, in addition to the substantive payload data that is to be transmitted by the frame, header information, such as source and destination addresses, priority or control information, and error-checking data. The header information may particularly include one or more tags that provide control information relating to the priority classification of the frame. Higher priority frames may be given preference, relative to lower priority frames, when being processed by a node.
The number and size of the tags in a frame may vary. In order to determine the priority classification for a frame, the tags in the frame may be parsed, where the relative order of the tags in the frame may be relevant to the determination of the priority classification. For high bandwidth applications, it may be important to be able to quickly determine the priority classification for a frame.